package mark.tom.friend.contract;

import io.reactivex.Observable;
import mark.tom.friend.base.presenter.BasePresenter;
import mark.tom.friend.base.view.BaseView;
import mark.tom.friend.bean.bo.ConfigRecordBO;
import mark.tom.friend.consts.BundleKeyConsts;

public interface AppConfigContract {

    interface View extends BaseView {

        void refreshRecordListView();

        void showAppConfigInfo(String appName, @BundleKeyConsts.AppConfigGroup String configTitle, String content);

        void refreshContent(String content);
    }

    interface Presenter extends BasePresenter {

        Observable<ConfigRecordBO> listConfigRecord();

        Observable<ConfigRecordBO> saveConfigRecord(String title, String content);

        Observable<Boolean> deleteConfigRecord(Long id);

        void onResult(int requestCode, String data);
    }
}
